// /common/utils/router.js

/**
 * 关闭当前页并跳转到目标页
 * @param {Object} options 配置项
 * @param {number} [options.delay=1500] 延迟时间（ms）
 * @param {string} options.url 目标页面路径
 * @param {number} [options.delta=1] 返回的页面数
 */
export const closeAndRedirect = (options = {}) => {
  const { 
    delay = 1500, 
    url, 
    delta = 1 
  } = options;

  setTimeout(() => {
    const pages = getCurrentPages();
    
    if (pages.length > 1) {
      uni.navigateBack({
        delta: delta,
        success: () => {
          setTimeout(() => {
            uni.redirectTo({ url });
          }, 100);
        },
        fail: (err) => {
          // 返回失败时直接跳转
          uni.redirectTo({ url });
        }
      });
    } else {
      // 无上一页时直接跳转
      uni.redirectTo({ url });
    }
  }, delay);
};